Source Language Intermediate Language Target Language Compiler
نویسنده
چکیده
We present a paradigm for proving the correctness of compilers for languages with parallelism. The source language is given a denotational semantics as a compositional translation to a higher-order process calculus. The target language is also given a denotational semantics as a compositional translation to the same process calculus. We show the compiler is correct in that it preserves denotation up to bisimu-lation. The target language is also given an operational semantics , and this operational semantics is shown correct in the sense that it is branching-bisimilar to the denotational semantics of the target language. Together, these results show that for any program, the operational semantics of the target code is branching-bisimilar to the semantics of the source code.
منابع مشابه
Iranian EFL Learners’ Attitudes towards Target and Source Cultures
Maintaining that language and culture are interwoven to the extent that learning the former is largely dependent on the latter, this study aimed to investigate the attitude of Iranian English as Foreign Language (EFL) Learners of Tehran South Branch of Islamic Azad University (both undergraduates and postgraduates) towards the learning of the cultural aspects of language, both the target and so...
متن کاملThe Perceptions of Language Learners across Various Proficiency Levels of Teachers’ Code-switching
Code-switching (CS), an alternation between two or more languages or language varieties, has long been researched in language education. A great number of studies by applied linguists have explored the reasons for, and the potential usages of code-switching in foreign language education over the past years. This study explores the perceptions of English language learners across various proficie...
متن کاملFormal Verification of a C Compiler Front-End
This paper presents the formal verification of a compiler front-end that translates a subset of the C language into the Cminor intermediate language. The semantics of the source and target languages as well as the translation between them have been written in the specification language of the Coq proof assistant. The proof of observational semantic equivalence between the source and generated c...
متن کاملProgram and Data Specialization Principles, Applications, and Self-Application
ly, the structure of a multi-pass compiler can be described in the following way. The compiler consists of a sequence n algorithms [comp1, . . . , compn]. Two adjacent algorithms compi and compi+1 communicate via an intermediate language, Ci, that is the source language of compi+1 and the target language of compi. In particular C0 is the source language of the whole compiler and Cn the target l...
متن کاملThe Advantages of Machine-Dependent Global Optimization
Using an intermediate language is a well-known, effective technique for constructing interpreters and compilers. The use of an intermediate language forces a structure on the organization of the compiler. The front end translates the source code to semantically equivalent intermediate language. The back end processes the intermediate language and produces target machine code. The choice of an i...
متن کامل